package com.IntelligentCommunity.algorithm.service;

import com.IntelligentCommunity.algorithm.domain.FaceImgResponse;
import com.IntelligentCommunity.algorithm.domain.FaceRecognitionConf;
import com.IntelligentCommunity.algorithm.domain.request.FaceAddRequest;

import java.util.List;
import java.util.Map;

/**
 * @author 美国五星上将麦克阿瑟
 */
public interface AlgorithmService {

    /**
     * 人脸添加
     * @param faceAddRequest
     * @return
     */
    Map faceAdd(FaceAddRequest faceAddRequest);

    /**
     * 人脸删除
     * @param imageId
     * @return
     */
    Map faceDel(String imageId);

    /**
     * 人脸识别
     * @param faceRecognitionConf
     * @return
     */
    Map faceRec(FaceRecognitionConf faceRecognitionConf);

    /**
     * 人脸搜索
     */
    FaceImgResponse faceFindBySubject(String subjectName);

    /**
     * 人脸检测
     * @param faceRecognitionConf
     * @return
     */
    Map faceDet(FaceRecognitionConf faceRecognitionConf);

    /**
     * 根据subject删除
     * @param subject
     */
    void delBySubject(String subject);

    /**
     * 批量添加
     * @param faceAddRequestList
     * @return
     */
    Map faceAddBath(List<FaceAddRequest> faceAddRequestList);

    /**
     * 根据subject批量删除
     * @param subjects
     */
    void delBySubjects(List<String> subjects);
}
